Today, due to decreasing costs of computing devices, many individuals have multiple computing devices which can include, but are not limited to, desktop computers, laptop computers, multimedia players, mobile telephones, e-readers, amongst others. As individuals can have multiple computing devices, documents of an individual may be spread across these multiple devices. For example, documents of the individual can include word processing documents, multimedia files, images, spreadsheet documents, HTML pages, cached HTML pages, amongst other documents. Moreover, many online services allow individuals to retain documents in an online storage location. Thus, for any particular individual, such individual may use multiple computing devices and have multiple documents spread across such computing devices.
Currently, it is either relatively difficult or expensive (in terms of usage of battery life, bandwidth, etc.) for a user to search over all of her documents across multiple computing devices. In a specific example, a user may have documents spread across multiple computing devices, and may wish to search for documents over the computing devices through utilization of a mobile telephone. If the mobile telephone is not connected to a network, search results for a search undertaken on the mobile phone will include only documents that reside on the mobile telephone, while other documents of the user on other computing devices will not be included in the search results. Accordingly, to enable the mobile telephone to search for documents across multiple computing devices, the mobile telephone must be connected to a network.
In an exemplary architecture, each computing device of the user can be in communication with one another by way of a connection to a network. In such an architecture, the user of the mobile telephone can transmit the query to each of the computing devices and search results can be returned from each computing device of the user to the mobile phone. In another example, each computing device of the user can transmit a local index to a coordinator device, such as a cloud computing device, and the coordinator device can maintain a global index of documents of the user across the computing devices of the user. In this example, the user of the mobile telephone transmits queries to the coordinator device and the coordinator device returns results of the query to the mobile telephone.
In the examples provided above, however, each of the computing devices of the user must be connected to a network, and some form of network communication between computing devices is required for every search. Accordingly, the ability to perform an interactive search is inhibited due to network latency. Additionally, batteries of mobile devices are drained more quickly when power must be provided to components of the mobile devices used for establishing and maintaining network connections. Moreover, searches for documents across computing devices cannot be undertaken unless at least the computing device utilized to perform the search maintains a network connection with a coordinator device.